iT邦幫忙

2024 iThome 鐵人賽

DAY 29
0
佛心分享-IT 人自學之術

C++探險家系列 第 29

Day 29 記帳專題紀錄

  • 分享至 

  • xImage
  •  
#include <iostream>
#include <ctime>
using namespace std;

int main() {
    int temp;
    struct tm *local;
    time_t t;
    char* dt;

    while(true) {
        cout << "要執行下面哪項動作?\n1) 記帳 2) 觀看紀錄 3) 離開\n";
        cin >> temp;
        switch(temp) {
            case 1: {
                int type;
                int amount;
                cout << "紀錄 1) 今日帳款 2) 選擇日期\n";
                cin >> temp;
                switch(temp) {
                    case 1:
                        t = time(NULL);
                        dt = ctime(&t);
                        local = localtime(&t);
                        cout << 1900 + local->tm_year << "年" 
                             << 1 + local->tm_mon << "月"
                             << local->tm_mday << "日" << endl;
                        cout << "分類: 1) 食 2) 衣 3) 住 4) 行 5) 育 6) 樂 7) 其他\n";
                        cin >> type;
                        cout << "金額: ";
                        cin >> amount;
                        writeToFile(1900 + local->tm_year, 1 + local->tm_mon, type, amount);
                        break;
                    case 2: {
                        int getYear, getMonth;
                        cout << "年份: ";
                        cin >> getYear;
                        cout << "月份: ";
                        cin >> getMonth;
                        cout << "分類: 1) 食 2) 衣 3) 住 4) 行 5) 育 6) 樂 7) 其他\n";
                        cin >> type;
                        cout << "金額: ";
                        cin >> amount;
                        writeToFile(getYear, getMonth, type, amount);
                        break;
                    }
                }
                break;
            }
            case 2: {
                int year;
                int month;
                cout << "欲觀看年份: ";
                cin >> year;
                cout << "欲觀看月份(輸入 0 觀看整年紀錄): ";
                cin >> month;
                readFile(year, month);
                break;
            }
            case 3:
                exit(0);
                break;
        }
    }
    return 0;
}

說明:
程式的主選單提供三個選項:1.記帳,2.觀看紀錄,3.離開。當選擇記帳時,使用者可以選擇記錄當日款項或指定日期,並輸入分類與金額。當選擇觀看紀錄時,使用者可以輸入年份和月份來查看該時間段的記錄。如果輸入0,則查詢整年度的紀錄。最後,使用者可隨時選擇離開程式。

!!以上內容是跟著第一次學C++就上手第二版一起跟著實作!!
今天把記帳小專案做完了,我覺得進步蠻多的,一切都很順利!明天就來記錄最後一天的心得囉,期待完賽!


上一篇
Day 28 記帳專題製作
下一篇
Day 30 總心得分享
系列文
C++探險家30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言